Mobile phones capable of establishing Voice over Internet Protocol (VoIP) calls can provide additional features to users. VoIP calls are generally established by transmitting a Session Initiation Protocol (SIP) message, namely a SIP INVITE message, to a SIP server. The SIP server can then process the initiation message, which may include sending the INVITE message to a destination device. The destination device and the mobile device can then exchange information for exchanging media streams, which effectively establish the call.
The SIP server may also provide additional functionality, such as allowing a mobile device to establish a call from within a local network. The mobile device can send an initiation request to the SIP server, which may then cooperate with a private branch exchange (PBX) device to establish the call. The PBX may contact the mobile device to establish a first call leg, and contact the destination number to establish a second call leg. The PBX may then connect the two call legs to establish the call. For the called party, the call can appear to originate from PBX as opposed to the mobile device, which can allow the mobile phone to place a call that appears to come from a different number, such as a work number, while using their mobile device.
However, the use of SIP to establish a call from the mobile device may result in a prolonged call setup time, which may be undesirable. If the SIP INVITE message, which will cause the PBX to contact the mobile phone, is delayed in transit due to poor network connections or a congested network, the mobile device will have to wait until the INVITE message is received and the PBX contacts the mobile device. One attempted solution to improve the call setup time is to have the mobile device attempt to establish the call by contacting the PBX if it has not received a response to the initiation request for a predetermined period of time.
Attempting to contact the PBX if no response has been received for a period of time may provide a shorter call setup time, however, if the INVITE message is eventually received and the PBX attempts to contact the mobile device as the mobile device is attempting to contact the PBX causing a possible call establishment collision on the cellular network. Therefore there is a need for an improved call establishment procedure for mobile devices.